
#ifndef __OS_MEMORY_H__
#define __OS_MEMORY_H__

#include <linux/device.h>
#include "os_mem.h"

typedef struct os_mem_block {
	char name[EI_MB_NAME_LEN];
	struct os_list_head list;

	struct dma_buf *dmabuf;
	unsigned long phys_addr;
	void *kvirt_addr;
	void *uvirt_addr;
	unsigned long nbytes;

	unsigned long cached; /* cached type */

	int ref;
} os_mb_t;

#define EI_MB_MAP2KERN           (1<<0)
#define EI_MB_MAP2KERN_CACHED    (1<<1)
#define EI_MB_RELEASED           (1<<2)

#define EI_MB_MAP2USR            (1<<3)
#define EI_MB_MAP2USR_CACHED     (1<<4)

#endif
